﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Entities;

namespace WisDom.SmartTMS.Entity
{
    /// <summary>
    /// 合同承运方
    /// </summary>
    public class TMSContractCarrier:BasicAggregateRoot<Guid>
    {
        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime CreateTime { get; set; }

        /// <summary>
        /// 创建人Id
        /// </summary>
        public String CreatorId { get; set; }

        /// <summary>
        /// 否已删除
        /// </summary>
        public Boolean Deleted { get; set; }

        /// <summary>
        /// 合同编号
        /// </summary>
        public String ContractNum { get; set; }

        /// <summary>
        /// 合同标题
        /// </summary>
        public String ContractTitle { get; set; }

        /// <summary>
        /// 对方单位
        /// </summary>
        public String CarriageUnit { get; set; }

        /// <summary>
        /// 对方负责人
        /// </summary>
        public String CarriageMan { get; set; }

        /// <summary>
        /// 线路
        /// </summary>
        public String Line { get; set; }

        /// <summary>
        /// 吨运价
        /// </summary>
        public Decimal FreightRates { get; set; }

        /// <summary>
        /// 包车条件吨位
        /// </summary>
        public Int32 CharterConditionTonnage { get; set; }

        /// <summary>
        /// 包车金额
        /// </summary>
        public Decimal CharterValue { get; set; }

        /// <summary>
        /// 签订时间
        /// </summary>
        public DateTime SignedTime { get; set; }

        /// <summary>
        /// 经办人
        /// </summary>
        public String Operator { get; set; }

        /// <summary>
        /// 合同金额
        /// </summary>
        public Decimal ContractMoney { get; set; }

        /// <summary>
        /// 合同标的或项目说明
        /// </summary>
        public String ProjectDescription { get; set; }

        /// <summary>
        /// 合同主要条款/变更条款
        /// </summary>
        public String MainClause { get; set; }

        /// <summary>
        /// 附件地址
        /// </summary>
        public String Accessory { get; set; }

        /// <summary>
        /// 审批状态
        /// </summary>
        public int State { get; set; }

        /// <summary>
        /// 审批人
        /// </summary>
        public String Approver { get; set; }


        //public DateTime? DeletionTime { get; set; }
        //public bool IsDeleted { get ; set; }

        public TMSContractCarrier(Guid id, DateTime createTime, String creatorId, Boolean deleted, String contractNum, String contractTitle, String carriageUnit, String carriageMan, String line, Decimal freightRates, Int32 charterConditionTonnage, Decimal charterValue, DateTime signedTime, String Operator, Decimal contractMoney, String projectDescription, String mainClause, String accessory, int state, String approver)
        {
            Id = id;
            CreateTime = createTime;
            CreatorId = creatorId;
            Deleted = deleted;
            ContractNum = contractNum;
            ContractTitle = contractTitle;
            CarriageUnit = carriageUnit;
            CarriageMan = carriageMan;
            Line = line;
            FreightRates = freightRates;
            CharterConditionTonnage = charterConditionTonnage;
            CharterValue = charterValue;
            SignedTime = signedTime;
            this.Operator = Operator;
            ContractMoney = contractMoney;
            ProjectDescription = projectDescription;
            MainClause = mainClause;
            Accessory = accessory;
            State = state;
            Approver = approver;
        }

    }
}
